home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 7: Sunsite / Linux Cubed Series 7 - Sunsite Vol 1.iso / system / shells / kiss-0.11 / kiss-0 / kiss / src / dorm.c < prev    next >
C/C++ Source or Header  |  1995-03-23  |  966b  |  49 lines

  1. #include "kiss.h"
  2.  
  3. int dorm (Stringstack s)
  4. {
  5.     register int
  6.     ret = 0,
  7.     i,
  8.     opt;
  9.     RmFlags
  10.     fl = { 0, 0, 0, 0 };
  11.  
  12.     while ( (opt = getopt (s.nstr, s.str, "virfh")) != -1 )
  13.     switch (opt)
  14.     {
  15.         case 'v':
  16.         fl.verbose = 1;
  17.         break;
  18.         case 'i':
  19.         fl.interactive = 1;
  20.         break;
  21.         case 'r':
  22.         fl.recursive = 1;
  23.         break;
  24.         case 'f':
  25.         fl.forced = 1;
  26.         break;
  27.         case 'h':
  28.         default:
  29.         error ("Bad commandline.\n"
  30.                "Usage: %s [-virf] file(s)\n"
  31.                "       %s -h\n"
  32.                "Where:\n"
  33.                "    -h: this text\n"
  34.                "    -v: verbose, show what's happening\n"
  35.                "    -i: interactive, ask confirmation\n"
  36.                "    -r: recursive: remove subdirs and contents\n"
  37.                "    -f: forced: override read-only permissions\n"
  38.                , progname, progname);
  39.     }
  40.  
  41.     if (s.nstr - optind < 1)
  42.     error ("need at least one argument");
  43.  
  44.     for (i = optind; i < s.nstr; i++)
  45.     ret += removefile (s.str [i], fl);
  46.  
  47.     return (ret);
  48. }
  49.